/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package redinftel.formularios;

import java.util.List;
import javax.ejb.EJB;
import javax.enterprise.context.RequestScoped;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession;
import redinftel.entidades.Usuario;
import redinftel.sesiones.UsuarioFacadeRemote;


/**
 *Clase que nos permite hacer el login del usuario
 * guardando el usaurio en una sesion
 * @author Six Degrees Team
 */
@ManagedBean
public class LoginBean {
    @EJB
    private UsuarioFacadeRemote usuarioFacade;

    private String email;
    private String password;
    private String error;
    private  static  final String USUARIO="usuario";
    private int codigoError;


    public String getEmail() {
        return email;
    }
/**
 *
 * @return codigo de error
 */
    public int getCodigoError() {
        return codigoError;
    }

    public void setCodigoError(int codigoError) {
        this.codigoError = codigoError;
    }

    public void setEmail(String email) {
        this.email = email;
    }
/**
 *
 * @return password
 */
    public String getPassword() {
        return password;
    }

    public String getError() {
        return error;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    /** Creates a new instance of LoginBean */
    public LoginBean() {
        clear();
          ChangeLocaleBean.cambiar();
    }

    private void clear() {
        error = "";
       
    }
/**
 *
 * @return index en el caso de equivocarse en hacer el login
 * o se redirigirá a la principal en el caso de hacer el log correctamente
 */
    public String doLogin() {
       clear();
        List<Usuario> lu = usuarioFacade.findUsuario(email, password);
        if (!lu.isEmpty())//si el usuario se encuentra
        { 
            FacesContext con = FacesContext.getCurrentInstance();
            HttpSession session = (HttpSession) con.getExternalContext().getSession(true);
            session.setAttribute(USUARIO, lu.get(0));
            return ("principal");
        } else {
            codigoError=1;
            return ("index");

        }
    }

}